Portions of this patent application contain materials that are subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
The present invention relates generally to computer documents and more particularly to concurrent use of frameworks.
Among developers of workstation software, it is increasingly important to provide a flexible software environment while maintaining consistency in the user""s interface. An early attempt at providing this type of an operating environment is disclosed in U.S. Pat. No. 4,686,522 to Hernandez et al. This patent discusses a combined graphic and text processing system in which a user can invoke a dynamic menu at the location of the cursor and invoke any of a variety of functions from the menu. This type of natural interaction with a user improves the user interface and makes the application much more intuitive.
Object-oriented applications should also reflect a consistent interaction interface with the user regardless of what application is currently active, and how many concurrent users are using the application. None of the prior art references of which applicant is aware provides the innovative hardware and software system features which enable all object-oriented applications to function in a consistent manner.
The subject invention overcomes the deficiencies of the prior art by providing a system and method for synchronizing an application or applications running on one or more computer systems. The applications commence operation in a consistent state and the consistency is maintained by distributing commands to each application as they are entered at a controlling system. Alternate embodiments manage more than one system entering and distributing commands. Provisions are also provided for entering commands at a single system that do not modify the application, but only affect the single system. Model tracking is used to track commands and apply them in a consistent manner throughout the system.